草庐IT

Java TCP Socket等待空闲?

全部标签

c# - 返工 EventWaitHandle 以异步等待信号

我需要更改当前代码,以便在调用EventWaitHandle.WaitOne时不阻塞当前线程。问题是我正在等待系统范围的事件。我还没有找到任何合适的替代品。代码:EventWaitHandlehandle=newEventWaitHandle(false,EventResetMode.AutoReset,"Localevent",outscreenLoadedSignalMutexWasCreated);StartOtherApp();if(screenLoadedSignalMutexWasCreated){isOtherAppFullyLoaded=handle.WaitOne(4

c# - '等待'一个可观察的

我的情况是我有一个正在处理的任务列表(启用驱动器、改变位置、等待停止、禁用)。“等待”监控IObservable,我想等待它(这样我就可以通过ContinueWith和其他任务来处理它)。我开始在订阅者的OnNext处理中执行以下任务,但这很丑陋。我现在想到的是这种扩展方法:publicstaticTaskWaitFor(thisIObservablesource,Funcpred){vartcs=newTaskCompletionSource();source.Where(pred).DistinctUntilChanged().Take(1)//OnCompletestheobse

c# - 当你不能等待时,你怎么能等待任务

我正在开发Windows8运行时组件,因此公共(public)接口(interface)不能包含Task因为它不是Windows运行时类型。这意味着我无法将该方法标记为async不能awaitprivateasync我的库中的方法。这导致了对如何处理我的应用程序逻辑的一些困惑。这就是我同步做我想做的事情的方式。Resultr=TryGetAuthResultFromFile();if(r!=null){returnr;}r=GetAuthResultFromWebAuthenticationBroker();returnr;问题是TryGetResultFrom文件是asyncTask

c# - 等待新任务 <T>( ... ) : Task does not run?

问题的延续here:在上述问题中,我有以下函数返回一个任务类型的对象(用于增量测试目的):privatestaticTaskGetInstance(){returnnewTask((Func>)(async()=>{awaitSimpleMessage.ShowAsync("TEST");returnnewobject();}));}当我调用awaitGetInstance();时,该函数被调用(并且我假设任务已返回,因为没有抛出异常)但任务就在那里。我只能猜测我做错了。我不希望此函数返回一个已经在运行的任务(即IMPERATIVE).如何异步运行此函数返回的任务?

c# - 我不能等待等待?

VisualStudio提示以下内容:publicRelayCommandSendRegistrationCommand{get;privateset;}publicasyncvoidSendRegistration(){HttpClientclient=newHttpClient();varresponse=awaitclient.GetStringAsync("url");//...todo}Cannotawait'System.Threading.Tasks.Task'我以为我以前做过这个,GetStringAsync不可等待? 最佳答案

c# - 如何在继续之前等待线程完成?

我有一些用于在.NETCF2.0上启动线程的代码:ThreadStarttStart=newThreadStart(MyMethod);Threadt=newThread(tStart);t.Start();如果我在循环中调用它,项目将完全乱序。如何在t.Start()之后引入等待,以便线程上的工作在代码继续之前完成?与手动创建线程相比,BeginInvoke/EndInvoke是否是更好的选择? 最佳答案 您需要对线程施加多少顺序?如果您只需要在代码继续之前完成循环中开始的所有工作,但您不关心循环中工作完成的顺序,那么调用Join

c# - 如果一个线程正在等待 console.readline 线程是否被挂起?

如果线程正在等待控制台。readline是线程挂起。如果不是,它是什么状态? 最佳答案 线程没有挂起。它在方法调用时被阻止。 关于c#-如果一个线程正在等待console.readline线程是否被挂起?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/2744578/

c# - WPF:应用程序空闲时间

我需要计算我的WPF应用程序的空闲时间(空闲时间=当没有键盘输入、鼠标输入(移动+点击)发生时)。到目前为止,我尝试了两种方法,但似乎都没有用:使用调度程序在每次获得contextIdle优先级时调用委托(delegate),问题是绑定(bind)和许多其他操作调用它,因此我不能真正使用它。我使用输入管理器注册了“System.Windows.Input.InputManager.Current.PostProcessInput”事件,每次调用它时我都重新开始空闲时间计数。第二种方法似乎很有前途,但问题是当鼠标悬停在应用程序上时(它有焦点)我不断收到事件。还有其他想法吗?或者修改第二个

c# - 将任何给定的函数转换为可等待的任务

以下代码的目标是将任何给定函数转换为可等待函数。这个想法是在从数据库中获取数据时使用它,从而使代码可以灵活地使用同步获取函数(我当前ORM的强加),或者使用与异步完全相同的函数。我知道代码背后的概念可能有很多问题。到目前为止,我只是试图摆脱编译器错误,以便我可以运行代码并检查行为。但是我当然愿意事先讨论这个概念,如果它背后的整个想法是错误的,那么我会更有效地利用我的时间寻找另一个解决方案。asyncstaticvoidMain(){//Thefollowinglinegivesacompilererror://Error1Thebestoverloadedmethodmatchfor'

c# - 如何序列化异步/等待?

假设我有这个简单的片段:asyncvoidbutton_Click(objectsender,RoutedEventArgse){awaitTask.Factory.StartNew(()=>{Console.WriteLine("start");Thread.Sleep(5000);Console.WriteLine("end");});}显然,每次我按下该按钮时,都会启动一个新任务,即使之前的任务仍在运行。我如何将任何新任务推迟到所有以前的任务完成之前?更多细节:在上面的示例中,每个新任务都与之前的任务相同。然而,在原始上下文中,任务的顺序很重要:参数可能会改变(我可以使用Date